package br.com.furb.model.enums;

/**
 * Representa os tipos de constraints das tabelas.
 *  
 * @since 01/11/2011
 */
public enum ConstraintType {
	
	CHECK_CONSTRAINT,
	FOREIGN_KEY,
	NOT_NULL,
	PRIMARY_KEY,
	REFERENCES,
	UNIQUE;
	
	/**
	 * @param name - o nome do tipo
	 * @return constraintType - o tipo associado ao nome informado
	 */
	public static ConstraintType getColumnTypeFromName(String name){
		return ConstraintType.valueOf(name.toUpperCase());
	}

	/**
	 * @param index - o indice relativo ao tipo
	 * @return constraintType - o tipo associado ao indice informado
	 */
	public static ConstraintType getColumnTypeFromIndex(Integer index) {
		return ConstraintType.values()[index];
	}

}